In some communications systems, a goal is the detection of a signal with some unknown parameters in noise. For example, in a burst-mode transmission, the start of the burst is often marked using some recognizable signal, or “Unique Word” (UW). This signal will typically arrive at the receiver with unknown (to a greater or less extent) timing, as well as unknown phase and frequency. The signal will also have been subjected to various impairments, such as additive white Gaussian noise (AWGN).
FIG. 1 illustrates a block diagram of a conventional communication system 100.
Communication system 100 includes a transmitter 102 and a receiver 104.
Receiver 104 receives information from transmitter 102 via a communication channel 106. Transmitter transmits a transmitted signal 108. Impairments to the reception of transmitted signal 108 by receiver 104 are generated by conditions denoted as impairment sources 110 external to transmitter 102 and receiver 104. Non-limiting examples of impairments include atmospheric noise, solar noise, cosmic noise, thermal noise, white noise, Gaussian noise and Doppler effect. Impairment sources 110 generate and inject impairments as denoted by an impairment 112. Interference by impairments 112 to transmitted signal 108 is modeled as additive as denoted by a noise addition element 114. Noise addition element 114 adds transmitted signal 108 and impairments 112 to generate a noisy signal 116. Receiver 104 receives and processes noisy signal 116. In order to receive and process noisy signal 116, receiver 104 performs processing steps, non-limiting examples of which include filtering, mixing and correlation.
FIG. 2 illustrates an example communications protocol 200 that is transmitted by conventional transmitter 102 (FIG. 1).
Communications protocol 200 includes a plurality of frames with a sampling denoted as a frame 204 and a frame 206.
Frame 204 and frame 206 are configured with respect to an x-axis 202 with units of time and resolution of seconds.
Transmission of frame 204 initiates at a time 208 and terminates at a time 210. Transmission of frame 206 initiates at a time 212 and terminates at a time 214.
Frame 204 includes a unique word 216 and a payload 218. Unique word provides a mechanism for receiver 104 to synchronize with frame 204. Payload 218 includes data and information desired by transmitter 102 to be received and processed by receiver 104. Transmission of unique word 216 initiates at time 208 and terminates at a time 220. Transmission of payload 218 initiates at time 220 and terminates at time 210.
Unique word 216 includes a plurality of symbols with a sampling denoted as a symbol 222 and a symbol 224. Transmission of symbol 222 initiates at time 208 and terminates at a time 226. Transmission of symbol 224 initiates at a time 228 and terminates at time 220. Payload 218 includes a plurality of symbols with a sampling denoted as a symbol 230 and a symbol 232. Transmission of symbol 230 initiates at time 220 and terminates at a time 234. Transmission of symbol 232 initiates at a time 236 and terminates at time 210.
Receiver 104 receives unique word 216 followed by payload 218. Receiver 104 knows in advance the symbol structure of unique word 216 and seeks to find unique word 216 by performing a correlation operation. Once a threshold has been met for the correlation operation, receiver 104 determines a starting time for the first symbol received of unique word 216, as denoted by time 208. Once receiver has determined the starting time for the initial symbol received, receiver 104 has also determined the initial time of reception for frame 204, as denoted by time 208. Receiver then uses the determination of time for initial reception of frame 204, as denoted by time 208, to synchronize and process the symbols of payload 218.
FIG. 3 illustrates a graph 302, a graph 304 and a graph 306 for explaining a conventional continuous correlation operation 300.
Conventional continuous correlation operation 300 may be described by the following:∫y(t−τ)x*(t)dt  (1)
For equation (1), x and y represent general complex-valued signals and τ represents an estimate for the starting time of the received signal.
Graph 302 describes the characteristic of x or equation (1), graph 304 describes the characteristic of y of equation (1) and graph 306 describes the result of performing a correlation operation between x and y or graph 302 and graph 304.
Graph 302 includes an x-axis 308 with units of time in increments of seconds and a y-axis 310 with units of height. A function 312 initiates at a time 314 and terminates at a time 316. Function 312 has a height as designated by a height 318.
Graph 304 includes an x-axis 320 with units of time in increments of seconds and a y-axis 322 with units of height. A function 324 initiates at a time 326 and terminates at a time 328. Function 324 has a height as designated by a height 330.
Graph 306 includes an x-axis 332 with units of time in increments of seconds and a y-axis 334 with units of height. A function 336 represents the correlation of function 312 of graph 302 with function 324 of graph 304 as described by equation (1). Function 336 initiates at a time 338 and increases linearly to a point 340 at a time 342 with a maximum value as denoted by a maximum value 344. Following this, function 336 decreases linearly and terminates at a time 346 with a height of zero. A threshold value as denoted by a threshold height 350 crosses function 336 at a point 348 with x-axis 332 value as represented by a time 352 and also at a point 354 with x-axis 332 value as represented by a time 356.
For receiver 104, threshold height 350 represents a condition of a potential match between a received signal and an expected signal, as denoted between time 352 and time 356, with point 340 representing an exact match between a received signal and an expected signal. Receiver 104 uses correlation to determine when a received signal has matched an expected signal and then uses the timing information to decode and process received information from a received signal.
In the case of AWGN in particular, it is well known that a signal can be optimally detected by computing the correlation between the known transmitted signal and the received signal, and finding the value of time τ which maximizes the magnitude of the correlation as given by the following equation:
                              τ          ^                =                                                            arg                ⁢                                                                  ⁢                max                            ⁢                                                                    τ                    ⁢                                                                  ∫                                                      y                    ⁡                                          (                                              t                        -                        τ                                            )                                                        ⁢                                                            x                      *                                        ⁡                                          (                      t                      )                                                        ⁢                                      ⅆ                    t                                                              ⁢                                                                                  2                                              (        2        )            
Where x and y in equation (2) are in general complex-valued signals and τ is the estimate of the starting time of the received signal. The variable x describes a sequence of predetermined symbols of a unique word and variable y represents a received sequence of symbols.
Typically digital sampled signals are being processed, and the correlation is replaced by the summation as shown below:
                                          τ            ^                    =          nT                ⁢                                  ⁢        where        ⁢                                  ⁢                  n          =                                                                      arg                  ⁢                                                                          ⁢                  max                                ⁢                                                                              n                        ⁢                                                  ⁢                                                                                                ∑                                          i                      =                      1                                        M                                    ⁢                                                                          ⁢                                                            y                                              i                        -                        n                                                              ⁢                                          x                      i                                              *                                                                                                                                                                                                  2                                                          (        3        )            
For equation (3), T represents a sampling period.
In addition to unknown timing and phase, a received signal may also have unknown frequency offset, within a range. The frequency offset will cause a phase shift over the length of the received signal. This will cause the correlation to be reduced or negatively affected. The reduction in correlation may be described as:
                                          1            T                    ⁢                                    ∫                                                -                  Γ                                /                2                                            T                /                2                                      ⁢                                          cos                ⁡                                  (                                      2                    ⁢                                          π                      ⁢                      ft                                                        )                                            ⁢                                                          ⁢                              ⅆ                t                                                    =                              sin            ⁡                          (                              π                ⁢                                                                  ⁢                f                ⁢                                                                  ⁢                Γ                            )                                                          π              ⁢                                                          ⁢              f              ⁢                                                          ⁢              Γ                        ⁢                                                                                    (        4        )            
For equation (4), f represents a frequency offset and T represents the length of time for the correlation. As may be observed, if the frequency offset relative to the correlation length becomes large, the peak value of the correlation may be reduced and as a result of the reduction in correlation, the detection performance may be degraded.
Three solutions to problems applying correlation to received signals with a frequency offset have been applied. One solution is nearly optimal, but highly complex. The other two solutions are less complicated, but experience suboptimal performance.
The first solution discussed may be referred to as a “brute force” approach where a search is performed over time and frequency. Instead of performing a single correlation as shown above, a bank of correlators may be used. The input to each correlator may be referred to as a signal y which has been frequency shifted by some increment. The maximization is taken over all the correlation magnitude values. In the limit of continuous time and frequency, this may be described as equivalent to:
                              τ          ^                =                                                            arg                ⁢                                                                  ⁢                max                            ⁢                                                                                  f              ·              τ                                ⁢                                                                  ∫                                                      y                    ⁡                                          (                                              t                        -                        τ                                            )                                                        ⁢                                      ⅇ                                          ⅈ                      ⁢                                                                                          ⁢                      2                      ⁢                      π                      ⁢                                                                                          ⁢                      ft                                                        ⁢                                                            x                      *                                        ⁡                                          (                      t                      )                                                        ⁢                                      ⅆ                    t                                                              ⁢                                                                                  2                                              (        5        )            
Typically, a discrete time and frequency approximation to (5) may be used as shown below:
                                          τ            ^                    =          nT                ⁢                                  ⁢        where        ⁢                                  ⁢                  n          =                                                                      arg                  ⁢                                                                          ⁢                  max                                ⁢                                                                                              n                ,                m                                      ⁢                                                                                                ∑                                          i                      =                      1                                        M                                    ⁢                                                                          ⁢                                                            y                                              i                        -                        n                                                              ⁢                                          ⅇ                                              j2π                        ⁢                                                                                                  ⁢                        imF                                                              ⁢                                          x                      i                                              *                                                                                                                                                                                                  2                                                          (        6        )            
For equation (6), mF represents some multiple of frequency sampling interval F. While this approach may perform well, it has replaced a single correlation with a bank of correlations, one for each discrete frequency.
FIG. 4 illustrates a block diagram of a conventional brute force receiver portion 400.
Brute force receiver portion 400 includes a plurality of correlators with a sampling denoted as a correlator 402, a correlator 404 and a correlator 406, a plurality of magnitude portions with a sampling denoted as a magnitude portion 408, a magnitude portion 410 and a magnitude portion 412 and a maximum calculation portion 414.
Correlator 402, correlator 404 and correlator 406 receive a signal via a communication channel 416 from external to brute force receiver portion 400. Furthermore, correlator 402 receives a signal 418 representing a discrete frequency offset denoted as 1F. Correlator 404 receives a signal 426 representing a discrete frequency offset denoted as 2F. Correlator 406 receives a signal 432 representing a discrete frequency offset denoted as mF, where m represents a value of maximum increment for frequency offset F.
Magnitude portion 408 receives a signal 420 from correlator 402. Magnitude portion 410 receives a signal 428 from correlator 404. Magnitude portion 412 receives a signal 434 from correlator 406 and output a signal 424.
Correlator 402, correlator 404 and correlator 406 receives a signal via communication channel 416 for processing via a correlation algorithm. Magnitude portion 408, magnitude portion 410 and magnitude portion 412 receives correlated signals from correlator 402, correlator 404 and correlator 406, respectively, for performing a magnitude calculation. Finally, maximum calculation portion 414 receives a signal which has had a correlation calculation and magnitude calculation performed via a signal 422, a signal 430 and a signal 436. Maximum calculation portion 414 determines which received signal has the largest magnitude. The signal with the largest magnitude and a value larger than a certain threshold may then be processed for timing information for retrieving received data information as received via communication channel 416.
While application of the brute force correlation method may perform well, it has replaced a single correlation with a bank of correlations, one for each discrete frequency. In other words, a correlator may search for the entire Unique Word over all frequencies and all times. Application of the brute force correlation method is very expensive to implement, especially in environments where size, weight, power consumption and power dissipation are considered a premium, such as in satellite or military applications.
A second approach for processing a correlation of a received signal is to break the correlation into shorter correlation intervals, and then combine the outputs of these subintervals non-coherently as shown below:
                                          τ            ^                    =          nT                ⁢                                  ⁢        where        ⁢                                  ⁢                  n          =                                                    arg                ⁢                                                                  ⁢                max                            n                        ⁢                                                  ⁢                          {                                                                                                                                      ∑                                                  i                          =                          1                                                L                                            ⁢                                                                                          ⁢                                                                        y                                                      i                            -                            n                                                                          ⁢                                                  x                          i                          *                                                                                                                          2                                +                                                                                                                        ∑                                                  i                          =                          1                                                                          2                          ⁢                          L                                                                    ⁢                                                                                          ⁢                                                                        y                                                      i                            -                            n                                                                          ⁢                                                  x                          i                          *                                                                                                                          2                                +                …                            }                                                          (        7        )            
FIG. 5 illustrates a block diagram of a conventional non-coherent receiver portion 500.
Conventional non-coherent receiver portion 500 includes a unique word portion 504, a plurality of sub-correlators with a sampling denoted as a sub-correlator 506, a sub-correlator 508 and a sub-corrclator 510, a plurality of delay portions with a sampling denoted as a delay portion 512, a delay portion 514 and a delay portion 516, a plurality of magnitude portions with a sampling denoted as a magnitude portion 518, a magnitude portion 520 and a magnitude portion 522 and a summation portion 524.
Sub-correlator 506 receives a signal from a communication channel 526 and receives a signal 552 from unique word portion 504. Magnitude portion 518 receives a signal 528 from sub-correlator 506. Delay portion 512 receives a signal from communication channel 526. Sub-correlator 508 receives a signal 532 from delay portion 512 and a signal 550 from unique word portion 504. Magnitude portion 520 receives a signal 534 from sub-correlator 508. Delay portion 514 receives signal 532 from delay portion 512. Delay portion 516 receives a signal 538 generated from a plurality of delay portions. Sub-correlator 510 receives a signal from delay portion 516 via a signal 540 and from unique word portion 504 via a signal 548. Magnitude portion 522 receives a signal 542 from sub-correlator 510. Summation portion 524 receives a signal from magnitude portion 518 via a signal 530, from magnitude portion 520 via a signal 536, from magnitude portion 522 via a signal 544 and from a plurality of other magnitude portions not shown.
Unique word portion 504 includes a plurality of unique word sub-portions with a sampling denoted as a unique word sub-portion 554, a unique word sub-portion 556 and a unique word sub-portion 558. Unique word sub-portion 554 includes a plurality of symbols with a sampling denoted as a symbol 560 and a symbol 562. Unique word sub-portion 556 includes a plurality of symbols with a sampling denoted as a symbol 564 and a symbol 566. Unique word sub-portion 558 includes a plurality of symbols with a sampling denoted as a symbol 568 and a symbol 570.
Unique word portion 504 is configured with respect to an x-axis 502 with units of time and resolution of seconds. Unique word portion 504 represents a predetermined sequence of symbols to be received in order to perform synchronization, decoding and processing. Symbols of unique word sub-portions correspond to a relation with respect to x-axis 502 for order of transmission and arrival. For example symbol 560 of unique word sub-portion 554 may be considered the first symbol to be received for a frame of data provided from a transmitter, whereas, symbol 570 of unique word sub-portion 558 may be considered the last received symbol for the unique word portion of a frame with payload symbols to follow.
Sub-correlator 506 receives a signal via communication channel 526 and performs a correlation of the received signal with the symbols received from unique word sub-portion 558. Sub-correlator 508 receives a delayed signal from communication channel 526 via delay portion 512 and performs a correlation of the delayed received signal with the symbols of unique word sub-portion 556. Sub-correlator 510 receives a multiplied delayed signal from communication channel 526 and performs a correlation of the delayed received signal with the symbols of unique word sub-portion 554.
Magnitude portion 518 receives a signal from sub-correlator 506 and performs a magnitude calculation. Magnitude portion 520 receives a signal from sub-correlator 508 and performs a magnitude calculation. Magnitude portion 522 receives a signal from sub-correlator 510 and performs a magnitude calculation. Summation portion 524 receives a set of magnitude calculations from magnitude portion 518, magnitude portion 520, magnitude portion 522 and a plurality of other magnitude portions not shown and performs a summation calculation. The summation calculation may be compared to threshold in order to determine if a unique word has been received as denoted by the configuration of unique word portion 504. Once the threshold has been achieved, the signal received via communication channel 526 may then be processed for timing information for retrieving received data information as received via communication channel 526.
With the conventional non-coherent receiver approach, a single correlator may be required, however the drawback is that the performance of the correlator in noisy conditions is degraded due to the non-coherent summation performed for the sub-correlations.
A third approach for processing a correlation of a received signal is to apply differential detection. For differential detection, a differential detection operation is performed on the received sequence of symbols to form a new sequence described as:y′i=yiy*i−1  (8)
The new sequence is then correlated with an expected differential sequence described as:x′ix=xix*i−1  (9)
FIG. 6 illustrates a block diagram of a conventional differential detection receiver portion 600.
Conventional differential detection receiver portion 600 includes a delay 602, a differential portion 604, a unique word portion 606, a delay 608, a differential portion 610 and a correlator 612.
Delay 602 receives a signal via a communication channel 614. Differential portion 604 receives a signal from communication channel 614 and a delayed version of the signal from delay 602 via a signal 616. Delay 608 receives a signal 620 from unique word portion 606. Differential portion 610 receives a signal 622 from unique word portion 606 and a delayed or shifted version of unique word from delay 608 via a signal 624. Correlator portion 612 receives a received differential signal from differential portion 604 via a signal 618 and an expected differential signal from differential portion 610 via a signal 626. Correlator 612 provides a signal external to conventional differential detection receiver portion 600 via signal 618.
Unique word portion 606 provides storage for an expected unique word to be received via communication channel 614. Delay 608 provides a delayed or shifted version of unique word portion 606. Differential portion 610 performs a differential operation on the unique word stored in unique word portion 606 and a delayed or shifted version of the unique word stored in unique word portion 606. Delay 602 provides a delayed version of the signal received via communication channel 614. Differential portion 604 performs a differential operation on the signal received via communication channel 614 and the delayed version of the signal received from delay 602. Correlator 612 performs a correlation operation on the differential operation performed on the unique word stored in unique word portion 606 and the differential operation performed on the signal received via communication channel 614 and the delayed version of the signal received via communication channel 614.
Signal 628 generated by correlator 612 is compared to a threshold in order to determine if a unique word has been received as denoted by the configuration of unique word portion 606. Once the threshold has been achieved, the signal received via communication channel 614 is then processed for timing information for retrieving received data information as received via communication channel 614.
An advantage of the conventional differential detection approach is that it is inherently insensitive to issues related to frequency offsets. However, the drawback to this approach is it can suffer a significant performance loss due to the differential detection step. Furthermore, the losses due to differential detection increase as the signal-to-noise ratio decreases.
What is needed is a system and method for optimally or near optimally detecting and decoding information embedded in a signal without necessitating a large numbcr of correlator banks for implementation.